home *** CD-ROM | disk | FTP | other *** search
- //---------------------------------------
- // ClipText.cs ⌐ 2001 by Charles Petzold
- //---------------------------------------
- using System;
- using System.Drawing;
- using System.Windows.Forms;
-
- class ClipText: Form
- {
- string strText = "Ejemplo de texto para el portapapeles";
- MenuItem miCut, miCopy, miPaste;
- [STAThread]
-
- public static void Main()
- {
- Application.Run(new ClipText());
- }
- public ClipText()
- {
- Text = "Texto en el portapapeles";
- ResizeRedraw = true;
-
- Menu = new MainMenu();
-
- // Men· Edici≤n
-
- MenuItem mi = new MenuItem("&Edici≤n");
- mi.Popup += new EventHandler(MenuEditOnPopup);
- Menu.MenuItems.Add(mi);
-
- // Elemento de men· Edici≤n Cortar
-
- miCut = new MenuItem("Co&rtar");
- miCut.Click += new EventHandler(MenuEditCutOnClick);
- miCut.Shortcut = Shortcut.CtrlX;
- Menu.MenuItems[0].MenuItems.Add(miCut);
-
- // Elemento de men· Edici≤n Copiar
-
- miCopy = new MenuItem("&Copiar");
- miCopy.Click += new EventHandler(MenuEditCopyOnClick);
- miCopy.Shortcut = Shortcut.CtrlC;
- Menu.MenuItems[0].MenuItems.Add(miCopy);
-
- // Elemento de men· Edici≤n Pegar
-
- miPaste = new MenuItem("&Pegar");
- miPaste.Click += new EventHandler(MenuEditPasteOnClick);
- miPaste.Shortcut = Shortcut.CtrlV;
- Menu.MenuItems[0].MenuItems.Add(miPaste);
- }
- void MenuEditOnPopup(object obj, EventArgs ea)
- {
- miCut.Enabled =
- miCopy.Enabled = strText.Length > 0;
- miPaste.Enabled =
- Clipboard.GetDataObject().GetDataPresent(typeof(string));
- }
- void MenuEditCutOnClick(object obj, EventArgs ea)
- {
- MenuEditCopyOnClick(obj, ea);
- strText = "";
- Invalidate();
- }
- void MenuEditCopyOnClick(object obj, EventArgs ea)
- {
- Clipboard.SetDataObject(strText, true);
- }
- void MenuEditPasteOnClick(object obj, EventArgs ea)
- {
- IDataObject data = Clipboard.GetDataObject();
-
- if (data.GetDataPresent(typeof(string)))
- strText = (string) data.GetData(typeof(string));
-
- Invalidate();
- }
- protected override void OnPaint(PaintEventArgs pea)
- {
- Graphics grfx = pea.Graphics;
- StringFormat strfmt = new StringFormat();
- strfmt.Alignment = strfmt.LineAlignment = StringAlignment.Center;
-
- grfx.DrawString(strText, Font, new SolidBrush(ForeColor),
- ClientRectangle, strfmt);
- }
- }
-